Modern color reproduction typically employs a fixed set of process ink colors that include cyan, magenta, yellow, and sometimes black. Placed on top of one another and in juxtaposition, these inks can be used to reproduce a range of colors called their gamut. Although the standard process colors were carefully chosen to provide a relatively large gamut, this gamut is nevertheless quite limited when compared to the full range of colors visible to the human eye. Thus, color fidelity must generally be compromised when reproducing images with process colors (or any other small, fixed set of color inks).
The problem is even more apparent when fewer than four color inks are used for printing an image. For example, one alternative to printing an image with the conventional four colors of ink (and black) as noted above, is the duotone process, in which just two colored inks are used. While duotones obviously have more limited color gamuts than three- and four-ink processes, they can nevertheless be used to reproduce a surprising range of color. A duotone print is really a combination of four colors: the paper color alone, the colors of each of the inks individually, and the color of the two inks superimposed on each other. These four colors define a bilinear surface in color space that may span a broad range of the full color gamut.
Duotone printing has traditionally been used almost exclusively to enhance monochrome gray-scale images with a tint of color. There are several advantages to using the duotone technique over the conventional four color printing process. First, duotone printing is significantly less expensive than process color, typically about two-thirds the cost. Thus, there is a clear economic advantage in using duotones for images that are adequately reproduced in this way. Second, a user can select one or both of the two printing inks to meet constraints, such as matching the precise colors of one or more corporate color inks. Also, because a large number of printing presses are two-color presses, printed documents are often designed for just two inks, generally black (for text) and one additional color.
It does not appear that any prior art teaches a general approach to reproducing images using duotones. The most closely related work in the field of computer graphics addresses the problem of gamut mapping, or smoothly mapping the colors of an original image to those available on an output device. Fundamentally, a duotone gamut is much more restricted than the gamut of a typical output device. The mapping approaches disclosed in the prior art provide for mapping from a broader range of colors to a more limited gamut in three dimensions. However, the prior art does not disclose a process for mapping a three-dimensional gamut to a gamut comprising a two-dimensional surface. The prior art also discloses creating a "highlight color image," a specialized duotone in which one ink (of the two inks used) is black.
There are a few articles in the optical engineering literature on calculating halftone separations for inks other than the standard four-color process inks. One reference describes how to compute separations when printing with an arbitrary number of inks. However, all of the inks and the order in which they will be printed must be specified by the user. Furthermore, the reference does not specify how to handle a color that is out of a gamut (the common case when mapping a full color image to a duotone gamut). Another prior art reference describes how the traditional process-color printing gamut can be extended by introducing additional basic colors.
In the printing industry, a number of empirical studies have developed improved models for halftone color reproduction. However, it would be preferable to adjust the output of the duotone model according to an empirically determined correction factor. One author has taught a similar approach, though he assumes that each ink can be corrected independently, rather than adjusting the duotone gamut as a whole.
To better understand the problems that arise in selecting the colors that will be used for a duotone image and in mapping the colors from a fill color image to the more limited gamut of the duotone image, it should be helpful to first discuss the topics of: color and color spaces, color halftone printing, and the Neugebauer halftone model. The following addresses these topics.
Color and Color Spaces: Color is determined by the intensity of light in the range of visible wavelengths from about 400 nm to 700 nm. According to the tristimulus theory of color perception, all colors can be reproduced using combinations of three primary wavelengths (roughly corresponding to red, green, and blue). Thus, color can be expressed as a function of wavelength, known as a spectral reflectance, or as a three-dimensional quantity.
The XYZ color space was developed in 1931 by the Commission Internationale de l'Eclairage (CIE) to standardize color specification. The XYZ color space is additive, meaning that the color resulting from the superposition of two colored light sources can be calculated by simply adding the coefficients of the two known colors. A spectral reflectance can be converted to XYZ coordinates by integrating the spectral information against three functions x, y, and z. The computer graphics community is more familiar with the RGB color space, an additive color space that is device dependent. Conversion between RGB and XYZ coordinates can be accomplished by a linear transform if the XYZ coordinates of the device's red, green and blue primaries are known.
In contrast to additive color spaces, perceptually uniform color spaces allow the difference between two colors (as perceived by the human eye) to be measured as the distance between points. For example, two colors c.sub.1 and c.sub.2, separated by some distance d in a perceptually uniform color space, appear about as different as two other colors c.sub.3 and c.sub.4 separated by the same distance d. The (CIE) developed two perceptually uniform spaces: L*a*b* and L*u*v*. Both color spaces require the definition of a reference white, which is usually taken to be a standard light source defined by the (CIE). In both spaces, L* indicates brightness and has a value of 100 for reference white. Though neither L*a*b* nor L*u*v* is perfectly perceptually uniform, both come close to satisfying the condition that colors separated by the same distance appear equally similar.
Color Halftone Printing: In color halftone printing, a continuous-tone image is reproduced by printing a number of versions of the image atop one another. Each version, known as a halftone separation, consists of various sized dots of a single ink. Color halftone printing differs from color dithering on monitors in that subtractive effects as well as additive effects play a role. The subtractive effect of superimposing dots of different color produces the set of printing primaries for a particular set of inks. For example, for cyan, magenta, and yellow ink printed on white paper, the set of printing primaries is cyan, magenta, yellow, blue (cyan+magenta), green (cyan+yellow), red (magenta+yellow), black (cyan+magenta+yellow), and white (no ink). The additive effect of juxtaposing dots of different sizes produces the entire set, or gamut, of colors that can be achieved by printing halftone separations using a particular set of inks. FIG. 1 illustrates the reproduction of a full color image 30 using cyan, magenta, yellow, and black inks. In this Figure, a small square 32 is enlarged, and then a small square 34 in square 32 is again enlarged to show how dots of cyan, magenta, yellow, and black are printed to visually provide a full range of colors in the full color image.
Neugebauer Halftone Model: In 1937, H. E. J. Neugebauer developed a series of equations that, given ink and paper colors, describe the amount of each ink needed to reproduce a given color. Intuitively, the model says that the overall color of a small area is a weighted average of the printing primaries, with each primary weighted by the relative area it covers. For example, in a square printed with cyan, magenta and yellow ink on white paper, the contribution of blue is given by the fraction of the square that is covered by cyan and magenta but not yellow. If .alpha..sub.1, .alpha..sub.2, and .alpha..sub.3 are the amounts of cyan, magenta, and yellow ink printed, then the contribution of blue is .alpha..sub.1 .alpha..sub.2 (1-.alpha..sub.3).
The "Neugebauer equations" express colors in terms of their coordinates in the XYZ color space. The Neugebauer model was originally designed to describe three-color printing, though it can be generalized to handle any number of inks. If g.sub.0 is the color of the paper, g.sub.i is the color of ink i on the paper, g.sub.ij is the color of inks i and j superimposed on the paper, g.sub.ij,k is the color of all three inks i, j, and k superimposed on the paper, and .alpha..sub.i is the amount of ink i (between 0 and 1). For three inks, the Neugebauer model describes c, a color in the printing gamut, in terms of the eight printing primaries and the amounts of the three inks required to achieve c: ##EQU1##
The prior art does not teach mapping from a three-dimensional color space to the two-dimensional gamut used for duotone printing. More importantly, there is no teaching in the art of determining the best color inks from those that are available to print a duotone image corresponding to a full color image so as to most accurately retain the "appearance" (or other selected attributes) of the full color image. To provide more versatility in such a process, it would be desirable to enable a user to select one of the color inks and then automatically determine the other color ink that should preferably be used for printing the duotone image. Clearly, it would also be desirable in a variety of situations to enable one or both duotone separations (the ink colors used) to be automatically determined for a specific colored paper that is selected by a user. As one example, this capability could be useful for creating duotone separations of full-color images for printing in a "yellow pages" telephone directory.